/* $Id: AdminNonClientPersonReviewFacade.java 
 * Copyright (C) 2011, TRAKHEES
 *  
 * Revision History
 *
 * Date  			Author 		    	Remarks
 * ---------------------------------------------------------------------------------
 *
 */
package ae.pcfc.etks.online.common.facade;

import ae.pcfc.etks.online.common.vo.AdminApprovalVO;
import ae.pcfc.etks.online.common.vo.NonClientPersonVO;
import ae.pcfc.etks.online.wf.service.client.vo.NonClientCompleteStepVO;

public interface AdminNonClientPersonReviewFacade extends Facade {
	
	/**
	 * getNonClientPersonByApplicationId
	 * Method to get non client person information by application id
	 * @param applicationId
	 * @return
	 * NonClientPersonVO
	 */
	public NonClientPersonVO getNonClientPersonByApplicationId(String applicationId);
	
	/**
	 * reviewNonClientPerson
	 * Method to update the approval action on the Non Client Person Registration application by Admin
	 * This method calls the DomainObjectManagers of AppMetaData, ProcessAction, ProcessComments to update the details
	 * Also, this creates the Client Person in the Single Client DB
	 * @param	adminApprovalVO - Contains information about the admin approval action
	 * @param	clientCompanyVO	- Contains information about the Client Person 
	 * void
	 */
	public NonClientCompleteStepVO reviewNonClientPerson(AdminApprovalVO adminApprovalVO, String strUserName);

	public void undoReviewNonClientPerson(AdminApprovalVO adminApprovalVO, String getgTKSID);
}
